﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Business.Models;
using System.Data;

namespace Business.DAO
{
    public class NienHocDAO
    {
        private ISSContext db = new ISSContext();
        public List<NienHoc> GetAll()
        {
            return db.NienHoc.ToList();
        }

        public NienHoc Get(int id)
        {
            NienHoc NienHoc = db.NienHoc.Find(id);
            return NienHoc;
        }

        public int Create(NienHoc NienHoc)
        {
            try
            {
                db.NienHoc.Add(NienHoc);
                return db.SaveChanges();
            }
            catch (Exception ex)
            {
                return 0;
            }
        }

        public int Edit(NienHoc NienHoc)
        {
            try
            {
                db.Entry(NienHoc).State = EntityState.Modified;
                return db.SaveChanges();
            }
            catch (Exception ex)
            {
                return 0;
            }
        }

        public int Delete(int id)
        {
            try
            {
                NienHoc NienHoc = db.NienHoc.Find(id);
                db.NienHoc.Remove(NienHoc);
                return db.SaveChanges();
            }
            catch (Exception ex)
            {
                return 0;
            }
        }

        public IEnumerable<NienHoc> GetByTruongHoc(int IdTruongHoc) 
        {
            return (from nienhoc in db.NienHoc where nienhoc.IdTruongHoc == IdTruongHoc select nienhoc).ToList();
        }

        public List<NienHoc> GetByQuanTri(QuanTri QuanTri)
        {
            var query = from nienhoc in db.NienHoc where nienhoc.QuanTri == QuanTri select nienhoc;
            List<NienHoc> lstNienHoc = query.ToList<NienHoc>();
            return lstNienHoc;
        }

        public List<NienHoc> GetByQuanTri_TruongHoc(TruongHoc TruongHoc, QuanTri QuanTri)
        {
            var query = from nienhoc in db.NienHoc where nienhoc.QuanTri == QuanTri && nienhoc.TruongHoc == TruongHoc select nienhoc;
            List<NienHoc> lstNienHoc = query.ToList<NienHoc>();
            return lstNienHoc;
        }
    }
}